home *** CD-ROM | disk | FTP | other *** search
/ Amiga Plus Leser 15 / Amiga Plus Leser CD 15.iso / Tools / Development / CIT.v4 / citra / CITColorwheel.h < prev    next >
Encoding:
C/C++ Source or Header  |  2002-03-13  |  2.4 KB  |  89 lines

  1. //
  2. //                    CITColorwheel include
  3. //
  4. //                          StormC
  5. //
  6. //                     version 2002.02.12
  7. //
  8.  
  9. #ifndef CIT_COLORWHEEL_H
  10. #define CIT_COLORWHEEL_H TRUE
  11.  
  12. #ifndef CIT_SCROLLER_H
  13. #include "CITScroller.h"
  14. #endif
  15. #ifndef CIT_GADGETS_H
  16. #include "CITGadget.h"
  17. #endif
  18.  
  19. #include <gadgets/colorwheel.h>
  20.  
  21. //
  22. // This enum is for internal use only
  23. //
  24. enum
  25. {
  26.   CITCOLORWHEEL_HUE = 0,
  27.   CITCOLORWHEEL_SATURATION,
  28.   CITCOLORWHEEL_BRIGHTNESS,
  29.   CITCOLORWHEEL_RED,
  30.   CITCOLORWHEEL_GREEN,
  31.   CITCOLORWHEEL_BLUE,
  32.   CITCOLORWHEEL_ABBRV,
  33.   CITCOLORWHEEL_DONATION,
  34.   CITCOLORWHEEL_BEVELBOX,
  35.   CITCOLORWHEEL_MAXPENS,
  36.   CITCOLORWHEEL_GRADIENTSLIDER,
  37.   CITCOLORWHEEL_SCREEN,
  38.   CITCOLORWHEEL_LAST
  39. };
  40.  
  41. class CITColorwheel:public CITGadget
  42. {
  43.   public:
  44.     CITColorwheel();
  45.     ~CITColorwheel();
  46.  
  47.     void Hue(ULONG hue)
  48.            {setTag(CITCOLORWHEEL_HUE,WHEEL_Hue,hue);}
  49.     void Saturation(ULONG sat)
  50.            {setTag(CITCOLORWHEEL_SATURATION,WHEEL_Saturation,sat);}
  51.     void Brightness(ULONG bright)
  52.            {setTag(CITCOLORWHEEL_BRIGHTNESS,WHEEL_Brightness,bright);}
  53.     void Red(ULONG red)
  54.            {setTag(CITCOLORWHEEL_RED,WHEEL_Red,red);}
  55.     void Green(ULONG green)
  56.            {setTag(CITCOLORWHEEL_GREEN,WHEEL_Green,green);}
  57.     void Blue(ULONG blue)
  58.            {setTag(CITCOLORWHEEL_BLUE,WHEEL_Blue,blue);}
  59.     void Abbrv(char* abb)
  60.            {setTag(CITCOLORWHEEL_ABBRV,WHEEL_Abbrv,ULONG(abb));}
  61.     void Donation(UWORD* don)
  62.            {setTag(CITCOLORWHEEL_DONATION,WHEEL_Donation,ULONG(don));}
  63.     void BevelBox(BOOL b = TRUE)
  64.            {setTag(CITCOLORWHEEL_BEVELBOX,WHEEL_BevelBox,b);}
  65.     void MaxPens(ULONG max)
  66.            {setTag(CITCOLORWHEEL_MAXPENS,WHEEL_MaxPens,max);}
  67.     void GradientSlider(class CITScroller* scrl)
  68.            {setTag(CITCOLORWHEEL_GRADIENTSLIDER,WHEEL_GradientSlider,ULONG(scrl->objectPtr()));}
  69.  
  70.     ULONG Hue() { return getTag(WHEEL_Hue); }
  71.     ULONG Saturation() { return getTag(WHEEL_Saturation); }
  72.     ULONG Brightness() { return getTag(WHEEL_Brightness); }
  73.     ULONG Red() { return getTag(WHEEL_Red); }
  74.     ULONG Green() { return getTag(WHEEL_Green); }
  75.     ULONG Blue() { return getTag(WHEEL_Blue); }
  76.  
  77.   protected:
  78.     virtual BOOL    Create(CITWindow* CITWd,class CITRootClass* parent);
  79.     virtual Object* NewObjectA(TagItem* tags);
  80.  
  81.   private:
  82.     void   setTag(int index,ULONG attr,ULONG val);
  83.     ULONG  getTag(ULONG attr);
  84.  
  85.     TagItem* colorwheelTag;
  86. };
  87.  
  88. #endif
  89.